package DAD;

import java.io.*;

public class da {

            public static void main(String[] args) throws IOException {
                char[] chs = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
                        'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
                FileOutputStream fps = new FileOutputStream("./src/apipractice/calcCharNum.txt");
                FileInputStream fis = new FileInputStream("./src/apipractice/calcCharNum.txt");

                InputStreamReader isr = new InputStreamReader(fis);
                BufferedReader br = new BufferedReader(isr);

                String str;
                StringBuilder sbr = new StringBuilder();
                while((str = br.readLine()) != null){
                    sbr.append(str);
                }
                System.out.println("文件中的字符是："+sbr);
                char[] cs = sbr.toString().toCharArray();

                for (int i = 0; i < chs.length; i++) {
                    int n=0;
                    for (int j = 0; j < cs.length; j++) {
                        if(chs[i] == cs[j]){
                            n++;
                        }
                    }
                    System.out.println("文件中字母"+chs[i]+"出现的次数是："+n);
                }

            }
        }
        /*boolean b=    true?false:true==false?false:true;
        System.out.println(b);*/
        /*int j =1;
        int x= 4;
        switch (4){
            case 1:j++;
            case 4:j++;
            case 5:j++;
            default:j++;
            long    l = 100;//long类型可以不加l或者L
        }
        int max = j+x;
        System.out.println(max);*/



        /*for (int i = 1; i < 1000; i++) {
            if (i % 2 == 1 && i % 3 == 2 && i % 4 == 3 && i % 5 == 4 && i % 6 == 5 && i % 7 == 0) {
                System.out.println(i);
            }
        }*///爱因斯坦台阶问题,答案是119/539/959


        /*for (int i = 100; i <= 200; i++) {
            if (i % 3 == 1 && i % 4 == 2 && i % 5 == 3) {
                System.out.println(i);
            }
        }*///操场问题,答案是118或者178


            /*for (int i = 0; i <= 370; i++) {
                if (i - 10 + i + 20 + i * 2 + i / 2 == 370) {
                    System.out.println(i-10);
                }
            }*///思路:假设相等数是i,所以i-10为甲做的,i+20为已做的,i除以2为
        // 丙做的,i乘以2为丁做的,甲乙丙丁相加为总量370,得出i,最后得出甲为70


       /* //i/100 == 4 判断百位是否有4
        //i/10% ==4 判断十位是否有4
        //i%10 ==4 判断各位是否有4
        int sum = 0;
        int i =1;
        for (; i <=500 ; i++) {
            if(i==4|| i%10==4||i/100==4||i/10%10==4){
                continue;
            }
            sum+=1;
        }
        System.out.println(sum);*///计算1-500 不包含4的数的个数




        /*for (int i = 0; i <163 ; i++) {
            if (i+(3*i+10)+10+3==163) {//3*i+10为被除数,i是除数,3是商,10为余数
                System.out.println(i);
                System.out.println(i*3+10);
            }
        }*///被除数=115,除数=35


        /*for (int m =1; m <=450 ; m++) {//假设男生的数量
            for (int w = 1; w <=450 ; w++) {//假设女生的数量
                if ((75*m+80.1*w)==76*(w+m)&&(m+w>=380)&&(m+w<=450)){//
                    System.out.println(m);
                    System.out.println(w);
                }
            }
        }*///数学竞赛题,男328,女80


    /*    for (int i = 1000; i < 9999; i++) {//决定范围是1000--9999
            if (i==((i-((i/1000)*1000))*3)){//i先除1000,在乘以1000,算出这个数的千位是几,在用i减去,即可算出去掉千位数的剩下的数
                System.out.println(i);
                break;
            }
        }//一个四位数,去头,等于剩下的数的三倍,这个数是1500


        *//*for (int i = 10; i < 100; i++) {
            if ((300 + i) - (i * 10 + 3) >= 0) {//判断前一位数是否比后一位数大
                if ((300 + i) - (i * 10 + 3) == 468) {
                    System.out.println(i);
                }
            }
            if ((i * 10 + 3) - (300+i) == 468){//后如果后一位数大,则后一位 数减前一位数
                System.out.println(i);
            }
        }*//*////这个两位数是85


        *//*for (int i = 100000; i <999999 ; i++) {//判断范围是100000-999999
            if ((700000+i/10)==4*i) {
                System.out.println(i);
            }
        }*//*//六位数是179487

        int sum = 0;
        int edm = 1;
        for (int i = 1; i < 10; i++) {//循环天数
            edm *= 2;//每一天的乞讨的钱数
            sum += edm;//把钱加一起
        }
        System.out.println(sum + 1);
    }
}
*/




